#pragma once
#include "VCBase.h"
#include "VCRefPtr.h"
#include "LBProjectPlanPlug/TaskEditor.h"

namespace LBPROJPLUG
{
	class IMainDocument : public IBaseObject
	{
	public:
		virtual ~IMainDocument() { }

		virtual CRefPtr<LBPROJLOGIC::ITaskEditor> GetTaskEditor() const = 0;
		virtual LBPROJGUI::CGanttChartWidget* GetGanttWidget() const = 0;

		virtual void OpenFile(const QString& path) = 0;
		virtual void SaveFile(const QString& path) = 0;

	protected:
		IMainDocument() { }

	};

	LBPROJECTPLANPLUG_EXPORT CRefPtr<IMainDocument> CreateTaskDocument(QWidget* pOwner);
}